Facenet
是google在2015於CVPR所發表的,提出在特徵空間裡做出識別、驗證的問題,只需想辦法將人臉特徵如何最好的映射到特徵空間中。如果將特徵完好的映射在特徵空間中,就可以直接解決人臉驗證、識別等問題。
使用的loss function為Triplet Loss
輸入為三元組<a,p,n>
a為anchor(已知者,需要辨識的人)
p為positive,與a為同一人但不同張影像(有可能為角度、光線不同的影像)
n為negative,與a為不相同的人
損失函式公式為:
L=max(d(a,p)-d(a,n)+margin,0)
若要產生出最小的L則須拉近(a,p)距離,拉遠(a,n)距離。
有三種三元組類別
easy triplets:L=0,這種情況不需進行優化。
hard triplets:d(a,n) < d(a,p),即(a,n)距離近,(a,p)距離遠。
semi-hard triplets:d(a,p) < d(a,n) < d(a,p) + margin
在原始的Facenet論文中是採取隨機的方式選取semi-hard triplets進行訓練的。